/**
 * 单词中断样式服务类
 */
export class WordBreakStylesService {
  private static instance: WordBreakStylesService

  static getInstance(): WordBreakStylesService {
    if (!WordBreakStylesService.instance) {
      WordBreakStylesService.instance = new WordBreakStylesService()
    }

    return WordBreakStylesService.instance
  }

  get default(): string {
    return `
word-wrap: break-word; /* 允许长单词或URL换行 */
overflow-wrap: break-word; /* 现代浏览器推荐属性 */
white-space: normal; /* 确保文本正常换行 */
  `
  }

  get singleLine(): string {
    return `
/* 单行文本截断并显示省略号 */
width: 100% !important; /* 重要！！！ */
max-width: 100% !important; /* 重要！！！ */
white-space: nowrap !important; /* 不换行 */
overflow: hidden !important; /* 隐藏溢出内容 */
text-overflow: ellipsis !important; /* 显示省略号 */
  `
  }

  multiLine(lineClamp: number = 1, lineHeight: number = 20): string {
    return `
/* 多行文本截断并显示省略号 */
display: -webkit-box !important;
max-height: ${lineHeight * lineClamp}px !important;
line-height: ${lineHeight}px !important;
-webkit-line-clamp: ${lineClamp} !important; /* 限制显示行数 */
-webkit-box-orient: vertical !important; /* 垂直方向排列 */
overflow: hidden !important; /* 隐藏溢出内容 */
text-overflow: ellipsis !important; /* 显示省略号 */
  `
  }
}
